spring如何在取消部署mule应用程序时停止java类
我的Mule应用程序使用了一个java类,它是作为Springbean启动的。这个很好用。但当我取消部署应用程序并部署新版本时,我遇到了一个问题
取消部署应用程序后,java进程仍处于活动状态。部署新版本的应用程序后,有两个java类实例正在运行
作为解决方案,我在java类中添加了一个shutdown钩子。钩子能用,但只有当我关掉骡子的时候。当我取消部署应用程序时就不会了
为了测试这一点,我做了以下工作:
- 部署应用程序并取消部署李>
- 在日志中查看关闭java进程的消息,未找到任何内容李>
- 再次部署应用程序李>
- 停下骡子,检查日志。现在有两个关于java进程关闭的条目李>
当我取消部署应用程序时,应该如何停止java进程
谢谢, 杰伦
我正在使用Mule 3.4.0和jdk1。7.0_25.
# 1 楼答案
在类上添加
stop
方法,并通过Spring的destroy-method
调用它